// use strict;
var loading = false;
var loadingIdx;
var initTabs  = [];
var initPages = [];
var themes = {
  'df'  : '#23262e',
  'blue': '#29d',
  'cyan':'#6f7c85',
  'gray':'#eee',
  'green' :'#009688',
  'orange':'#FFB800',
  'red':'#ff5722',
};
layui.cache.tab_welcome = {
  title:'<i class="fa fa-desktop"></i>',
  id:'iframe0'
};
layui.use(['table2','form','laytpl','element','tabrightmenu','rb'],function (){
  var $ = layui.jquery
  ,el = layui.element
  ,form = layui.form
  ,laytpl = layui.laytpl
  ,rb = layui.rb
  ,table = layui.table2
  ;

  // login check
  var isLogin = rb.local('isLogin') || false;
  if(!isLogin){
    layer.msg(LL("need login"),{
      icon: 5,time:2000
    },function(){
      location.href = "login.html";
    });
    return;
  }

  // 删除tab 更新 id
  el.on('tabDelete(mainTab)', function(data){
    initTabs.remove($(this).parent().attr('lay-id'));
  });

  var uinfo = rb.local("uinfo");
  //阻止IE7以下访问
  var device = layui.device();
  if(device.ie && device.ie < 8){
    layer.alert(L('ie-warning'));
  }

  // 全局ajax 设置
  $.ajaxSetup({
    headers: {JWT : uinfo.sid}
    ,global: false
    // ,error: function (x,e) {
    //   if (x.status == 0) {
    //     rb.alert('网络错误');
    //   } else if (x.status == 404) {
    //     rb.alert('未知请求');
    //   } else if (x.status == 500) {
    //     rb.alert('服务器故障');
    //   } else {
    //     rb.alert('未知错误.\n' + x.responseText);
    //   }
    //   rb.loading(loadingIdx);
    // }
  });
  // head menu
  $('body').on('click','.js-hide-menu',function(){
    event.stopPropagation();
    toggleLeftMenu();
  });

  function toggleLeftMenu(){
    $('.layui-side').toggleClass('hide');
    $('.layui-logo').toggleClass('hide');
    $('.layui-footer').toggleClass('hide');
    $('.layui-body').toggleClass('change');
    $('.header-left').toggleClass('change');
  }
  // 转换菜单栏 键盘H键事件有问题
  // $(".layui-header").click(function(e){
  //   event.stopPropagation();
  //   toggleLeftMenu();
  // });

  // var $fullText = $('.admin-fullText');
  // todo : 按esc 后文字 没变
  $('#admin-fullscreen').on('click', function() {
    // if ($fullText.text() == L('fullscreen')) {
      rb.requestFullScreen();
    //   $fullText.text(L('ESC'));
    // } else {
    //   rb.exitFullScreen();
    //   $fullText.text(L('fullscreen'));
    // }
    // todo : tab max
  });

  // 内部刷新
  $('body').on('click','.js-refresh',function(e) {
    var id = $('.layui-tab-title>.layui-this').attr('lay-id');
    rb.reloadPage(id);
    // document.getElementById(id).contentWindow.location.reload(true);
  });
  // TODO listener
  $('body').on('click','.js-todo',function(e) {
    rb.todo();
  });

  rb.check();
  var apiPath = layui.cache.apiPath;
  var index = rb.loading();
  rb.log("index","init");
  // 请求菜单 + 添加菜单
  rb.log("get menu ----------> ");
  $.post(apiPath+'api_menu/ajax', function(data) {
    // console.log("data",data);
    var data = 'object' != typeof(data) ? JSON.parse(data) : data;
    if(data.code != 0){
      rb.alert(data.msg);
      if(data.code == 4016){ location.href='login.html'; }
      return;
    }
    layui.cache.menus = menus = data.data.menus;
    if(!rb.isEmpty(menus)){
      var html = '',k,item,menu,id;
      // 组装顶部菜单
      $.each(menus,function(i,item){
         html = html
          +'<li class="hvr-pulse layui-nav-item " data-id="'+item.id+'">'
          +' <a href="javascript:;">'+LL(item.name)+'</a>'
          +'</li>';
      });
      if(html){
        $topMenu = $('.layui-layout-admin>.layui-header .layui-layout-left');
        if(menus.length>9) $topMenu.addClass('layui-nav-mini');
        $topMenu.html(html).children('.layui-nav-item').on('click',function(e){
          e.preventDefault();  // 阻止默认
          e.stopPropagation(); // 阻止向上传递
          var id = $(this).data('id');
          // 保存上次点击的顶部菜单id
          rb.local('last_top_menu',parseInt(id));
          // 组装左边菜单
          var html = '';
          var _menu_id = rb.local('menu_id') || 0,temp=1;
          $.each(menus[id]['child'], function(k, item) {
            html += '<li class="layui-nav-item '+ (temp ? ' layui-nav-itemed' : '') + '">'
                  + '  <a class="" href="javascript:;"><i class="' + item.icon + '"></i> ' + item.name + '</a>';
            if(item.child){
              html += '<dl class="layui-nav-child">';
              $.each(item.child,function(k2,item2) {
              html += '  <dd class="hvr-shrink ' + (item2.id == _menu_id ? 'layui-this' : '') + '"><a href="javascript:;" data-href="' + item2.link + '" data-params="' + (item2.params || '') +'" data-id="' + item2.id + '">&nbsp;&nbsp;&nbsp;&nbsp;' + item2.name + '</a></dd>';
              });
              html += '</dl>';
            }
            html += '</li>';
            temp = 0;
          });
          if(html){
            // 每次切换topMenu 重新生成leftMenu
            $leftMenu = $('.layui-layout-admin>.layui-side.side-menu .layui-nav-tree.layui-nav-side');
            $leftMenu.html(html);
            el.render('nav');
            // $leftMenu.find("dd").click(function(e) {
            $leftMenu.off("click").on('click','dd', function(e) {
              e.preventDefault();
              $this  = $(this);
              var $a = $this.children('a');
              var id = $a.data('id');
              // 保存上次点击的左边菜单id
              var _menu_ids    = rb.local('menu_ids') || { };
              var _top_menu_id = rb.local('last_top_menu') || 0;
              if(_top_menu_id){
                _menu_ids[_top_menu_id] = id;
                rb.local('menu_ids',_menu_ids);
              }
              var ops = {
                title : $this.parent().prev('a').children('i').prop("outerHTML")+$a.html().replace(/&nbsp;/g, "")
                //+'<i class="layui-icon layui-unselect layui-tab-close">ဆ</i>'
                // ,content: rb.getTabIframe(id,$a.attr('href'))
              }
              tabContent($a.data("href"),$a.data("params"),id,ops);
            });
          }
        }).filter('[data-id='+( rb.local('last_top_menu')|| 0 )+']').addClass('layui-this').trigger('click');
        // 直接显示第一个主菜单
        // $(".layui-header>.header-left li:eq(0)").click();
      }
    }
    NProgress.done();
    rb.loading(index);
  })

 // 获取scrollbar 宽度
  var sbw = rb.getScrollbarWidth();
  $('.layui-layout-admin>.layui-body').css('left','-='+sbw);
  $('.layui-layout-admin>.layui-header>.header-left').css('margin-left','-='+sbw);
  $('.layui-layout-admin>.layui-logo').css('width','-='+sbw);

  // 不写 关闭结构 自动绑定事件
  // $('.layui-tab').on('click','.layui-tab-close',function(){
  //   el.tabDelete('mainTab', $(this).parent().attr('lay-id'));
  // })

  // 自动记忆上次的每个大菜单的小菜单
  // var menu_id  = rb.local('menu_id') || 0;
  // var menu_ids = rb.local('menu_ids') || { };
  // if(!menu_id && !rb.isEmpty(menu_ids)){
  //   menu_id = menu_ids[rb.local('last_top_menu') || 0] || 0;
  // }
  // if(menu_id){
  //   $('.layui-nav-tree dd a[data-id='+menu_id+']').click();
  // }else{
  //   rb.tabChangeTop(0);
  // }


  // tab 右键菜单
  // 默认方式渲染全部：关闭当前（closethis）、关闭所有（closeall）、关闭其它（closeothers）、关闭左侧所有（closeleft）、关闭右侧所有（closeright）、刷新当前页（refresh）
  layui.tabrightmenu.render({
    container: '#mainTab'
    ,filter: 'mainTab'
    // navArr：对象数组，每个对象包含dataType、title、method属性
    ,navArr: [
      // { eventName: 'refresh', title: L('refresh') },
      // { eventName: 'closethis', title: '关闭' },
      // { eventName: 'closeothers', title: '关闭其他' }
      { title: L("refresh"),eventName: 'refreshPage' },
      { title: L("close"), eventName: 'closeThisTab' },
      { title: L("close-other"), eventName: 'closeOtherTab' },
    ]
    ,width:100
    // 注册自定义事件
    ,registMethod: { 'refreshPage':refreshPage,'closeThisTab':closeThisTab,'closeOtherTab':closeOtherTab }
  });
  function refreshPage(id, title, currentNavGroup, dom) {
    rb.reloadPage(id);
  }
  function closeThisTab(id, title, currentNavGroup, dom) {
    initPages.remove(id);
    el.tabDelete('mainTab', id);
  }
  function closeOtherTab(id, title, currentNavGroup, dom) {
    $.each(initPages,function(i, ele) {
      if(ele != id){
        initPages.remove(ele);
        el.tabDelete('mainTab', ele);
      }
    });
  }

  // theme
  $('.js-set-theme').click(function() {
    var $this = $(this);
    var theme = $this.data('theme') || 'df';
    var html = '<div class="theme-wrap">';
    var temp = 0;
    $.each(themes,function(i, ele) {
      html += '<div class="'+(i == theme ? 'theme' : '')+'" data-theme="'+ i + '" style="background-color:'+ele+';border:solid 2px '+ ele+';" title="'+i+'"></div>';
      temp ++ ;
      if(0 === temp%4) html +=  '<br />';
    });
    html +='</div>';
    var layi = layer.open({
      // skin: 'layui-layer-lan',
      offset: '50px',
      btn : L("save"),
      title: L("theme"),
      anim: 5,
      shadeClose:true,
      content: html,
      yes: function (){ //保存
        var theme = $('.theme-wrap>.theme').data('theme');
        $.post("{:url('user/editOne',['id'=>UID,'field'=>'theme'])}",{
          val : theme
        },function(data){
          // 设置用户的风格
          rb.ajaxTip(data);
        });
      },
      error : function(err){
        rb.msg(L('server-err'),5);
      }
    });
  });
  $('body').on('click','.theme-wrap>div',function(e){
    var $this = $(this);
    var theme = $this.data('theme');
    $this.addClass('theme').siblings().removeClass('theme');
    var css =  '__SKIN__css/skin/'+theme+'.css?v='+layui.rb.gettime('','int');
    $('#style-color').attr('href',css);
    // 加载 css //+ rb.gettime('','int')
    // layui.link(css);
  });

  // lang
  $('.js-set-lang').click(function() {
    var $this = $(this);
    var lang  = $this.data('lang') || '';
    var html  = '<div class="lang-wrap">';
    var temp  = 0;
    $.each(langs,function(i, ele) {
      html += '<div class="'+(i == lang ? 'lang' : '')+'" data-lang="'+ i + '" style="">'+ele+'</div>';
      temp ++ ;
      if(0 === temp%4) html +=  '<br />';
    });
    html += '</div>';
    var layi = layer.open({
      // skin: 'layui-layer-lan',
      offset: '50px',
      btn : L('save'),
      title: L('lang'),
      anim: 5,
      shadeClose:true,
      content: html,
      yes: function (){ //保存
        var lang = $('.lang-wrap>.lang').data('lang');
        $.post("{:url('user/editOne',['id'=>UID,'field'=>'lang'])}",{
          val : lang
        },function(data){
          // 设置用户的风格
          rb.ajaxTip(data);
          location.reload();
        });
      },
      error : function(err){
        rb.msg(L('server-err'),5);
      }
    });
  });
  $('body').on('click','.lang-wrap>div',function(e){
    var $this = $(this);
    var lang = $this.data('lang');
    $this.addClass('lang').siblings().removeClass('lang');
    // todo : 跳转
    // var css =  '__SKIN__css/skin/'+lang+'.css?v='+layui.rb.gettime('','int');
    // $('#style-color').attr('href',css);
    // 加载 css //+ rb.gettime('','int')
    // layui.link(css);
  });

  // debugger;;
  function tabContent(path,params,id,ops) {
    rb.handleMenu(path,params,id,ops);
  }
  // function getContent(path,params,$obj) {
  //   // console.log("isLgin: " , isLogin);
  //   console.log("path --> ",path, " : params --> ", params);
  //   loading = true;
  //   var index = rb.loading();
  //   var url = './'+path + (layui.cache.ext || '.html');
  //   $.get(url+params, function(tpl) {
        // var lay = rb.getTplByTagName(tpl,"lay");
        // var js  = rb.getTplByTagName(tpl,"js");
        // tpl     = rb.getTplByTagName(tpl,"tpl");
        // lay = lay ? rb.replaceByTagName(lay,'lay') : '';
        // js  = js  ? rb.replaceByTagName(js,'js')   : '';
        // tpl = tpl ? rb.replaceByTagName(tpl,'tpl') : '';
  //     if($.trim(js)){ //有js代码
  //       try {
  //         // js = js.replaceAll('&amp;',"&");
  //         // console.log("js",js);
  //         var exports = eval(js);
  //         exports = $.extend(true, exports, {data:{},_d:{},_params:""});
  //       } catch(e) {
  //         rb.log("模板js解析出错",e);
  //       }
  //       // console.log("exports: ", exports);
  //       if(exports.data) {
  //         // 请求的参数
  //         exports.params = params;
  //         if('string' == typeof exports.use){
  //           exports.use = [exports.use];
  //         }
  //         layui.use(exports.use,function(){
  //           var modules = [];
  //           $.each(exports.use,(function(i,el){
  //             modules.push(layui[el]);
  //           });
  //           // console.log("modules",modules);
  //           try{
  //             exports.init.apply(exports,modules);
  //           } catch(e) {
  //             rb.log("模板js运行出错",e);
  //           }
  //           try{
  //             laytpl(tpl).render(exports.data, function(html) {
  //               $obj.html(html);
  //               exports.after.apply(exports,modules);
  //             });
  //           } catch (e) {
  //             rb.log("模板渲染出错",e);
  //           }
  //         });
  //       }
  //     }else{
  //       $obj.html(tpl);
  //     }
  //     rb.loading(index);
  //     loading = false;
  //   });
  // }
  // window.addEventListener("hashchange", gotoMenu);
  // function gotoMenu() {
  //   var href = window.location.href;
  //   console.log("href " + href);
  //   var id1  = href.indexOf('#');
  //   var id2  = href.indexOf('?');
  //   if( id2 > -1 ) {
  //     getContent(href.substring(id1 + 1, id2),href.substring(id2),$('#content'));
  //   }else{
  //     getContent(href.substring(id1 + 1),"",$('#content'));
  //   }
  //   return false;
  // }

  ///////////////////////// app.js ////////////////////////
  //tips
  var tip_index;
  $('body').on('mouseover mouseout','.tooltip',function(e) {
    if(e.type == "mouseover"){
      var $this = $(this)
      ,text = $this.data('text') || '...'
      ,type = $this.data('type') || 2
      ,time = $this.data('time') || 0;
      var bg = ($this.children('i').length && rb.getColor($this.children('i'),'color')) || '#FF5722';
      tip_index = layer.tips(text, $this, {
        tips: [type, bg]
        ,time:time
      });
    }else if(e.type == "mouseout"){
      layer.close(tip_index);
    }
  });
  //一般是select 框
  $(".sle_ajax_post").change(function(ev){
    var item  = ev.target;
    var $item = $(item);
    var query = $item.serialize();
    if (item.hasClass('confirm')) {
      rb.confirm($item.data('content') || '',function(index) {
        layer.close(index);
        rb.selectPost(query, item);
      });
    }else{
      rb.selectPost(query, item);
    }
  })

  // 单图片预览 click
  var imgi;
  $('body').on('click','img.js-view',function(){
    imgi && layer.close(imgi);
    layui.picView(this,{
      id:'js-layui-img-view'
      ,shade:0.1 //0-1
      ,anim: 5 //0-6
      ,closeBtn: 2 //0-2
    },function(i){
      imgi = i;
    });
  });
  // 单图片预览 blur
  $('body').on('blur','#body img.js-view',function(){
    imgi && layer.close(imgi);
  });
  //ajax get请求
  $('body').on('click','.ajax-get',function(ev) {
    rb.log("ajax-get",'');
    layui.stope(ev);
    var target,that = this,$this = $(this);
    if ((target = $this.attr('url')) || (target = $this.data('href'))) {
      var params = $this.data('params') || '';
      params = params ? JSON.parse('{'+ params+ '}') : {};
      // params["sid"] = rb.local('uinfo').sid;
      target = layui.cache.apiPath + target + "?" + $.param(params);
      if ($this.hasClass('confirm')) {
        rb.confirm($this.data('content') || '',function(index) {
          layer.close(index);
          rb.get(that, target);
        });
      }else{
        rb.get(that, target);
      }
    }
    return false;
  });

  // iframe内点击 主动隐藏tab右键菜单
  // $('body').click(function(e) {
  //   if(top != self) {
  //     $(parent.document).find(".mainTab").hide();
  //     // e.stopPropagation();
  //     // return false;
  //   }
  // });
  // ?? : js-input-search内的input的enter:触发搜索
  // $('body').on('keydown','input',function(e) {
  //   if(e.keyCode == 13){
  //     var temp = $(this).parents('#js-search-input');
  //     if(temp.length) temp.find('#js-search').click();
  //   }
  //   // name = js-search
  //   // if(e.keyCode==13) document.all['js-search'].click();
  // });

  // 关键词搜索 enter
  $('body').on('keyup','#jsf-kword',function(e){
    if(e.keyCode == 13){
      $('#js-search').trigger('click');
      // tofix : 当form表单中只有一个<input type="text" />时回车会自动提交
      // 无效暂手动添加input
      // layui.stope(e);
      // e.preventDefault();
      // return false;
    }
  });
  // 最外层框架 主内容tab 切换
  $('body').on('click','.js-tab',function(e) {
    var $this = $(this);
    var id = $this.data('tab') === 0 ? 0:($this.data('tab') || rb.gettime('','int'))
    ,src = $this.data('href') || $this.attr('href');
    var params = $this.data('params') || '';
    params = params ? JSON.parse('{'+ params+ '}') : {};
    if($this.hasClass('js-my')){ // 自己详情
      id = rb.local('uinfo').id;
      params.id = id;
      id = 'userd-'+ id;
    }
    // title = $this.html().replace(/&nbsp;/g, "");
    var title = $this.data('title') || rb.filterHtml($this.html());
    if(/^userd-/.test(id)){ // 用户详情
      title = '<i class="layui-icon layui-icon-username"></i> ' + title ;
    }
    rb.handleMenu(src,params,id,{
      title: title,
      id: id,
      // refresh: $this.hasClass('refresh'),
    });
    return false;
  });

  // 显示欢迎页
  tabContent('welcome');
  // $(".js-tab[data-id=0]").click();
  // rb.tabChangeTop(0);

  // 批量编辑单字段 or 批量删除 , 看后台支持
  // layui2.4+的toolbar模板里写table.on('toolbar(test)',f)
  $('body').on('click','#body .js-ops',function(e) {
    var op_ids = [],that = this;
    var $this = $(this);
    var tableId = $this.data('table') || ''
      ,href = $this.attr('url') || $this.data('href') || '';
    if(!href || !tableId) rb.alert(L('html-error'),0);
    // table.id checkStatus:data,data.length,isAll
    var cs = table.checkStatus(tableId);
    // console.log('cs',cs);
    if(cs.data.length) {
      cs.data.forEach(function(val,index) {
        op_ids.push(val.id);
      });
      rb.log('op_ids',op_ids.join(','));
      href = layui.cache.apiPath + href;
      var params = $this.data("params") || '';
      var params_df = { ids: op_ids };
      // var params_df = { ids: op_ids,sid: rb.local('uinfo').sid };
      params = params ? $.extend(JSON.parse("{"+ params+"}"),params_df) : params_df;
      if ($this.hasClass('confirm')) {
        rb.confirm($this.data('content') || '',function(index) {
          layer.close(index);
          rb.post(that,href,params);
        });
      }else{
          rb.post(that,href,params);
      }
    }else{
      rb.alert(L('need-select'),0);
      return false;
    }
    // table.reload(tableId);
  });
  $('body').on('click','.ajax-layer',function() {
    $this = $(this);
    rb.local('no-msg-layer',$this.attr('no-msg-layer') === '');
    rb.log("ajax-layer",'');
    var href   = $this.data('href') || $this.attr('href') || '';
    var params = $this.data('params') || '';
    var title  = $this.data('title') || $this.attr('title') || false;
    var width  = $this.data('width') || '800px';
    var height = $this.data('height') || '80%';
    // var height = $this.data('height') || (parseInt(top.document.documentElement.clientHeight *.8 -90) + 'px');
    var ops = {
      shadeClose: true,
      shade:0.5,
      title:title,
      maxmin:true,
      moveOut:true,
      area:[width,height]
    };
    try {
      params = JSON.parse('{' + params + '}');
    } catch(e) {
      console.log("参数错误",params);
      return;
    }
    if($this.hasClass('js-html')) { // 直接返回 html : 逻辑页面自己控制
      ops.content =  href + (layui.cache.ext || '.html') + "?" + $.param(params);
      ops.type = 2;
      var i = layer.open(ops);
      // layer.full(i); // max
    }else{ // 返回单页面 tpl lay js 逻辑在主页面执行
      //debugger;;
      // console.log("isLgin: " , isLogin);
      console.log("href --> ",href, " : params --> ", params);
      // loading    = true;
      // loadingIdx = rb.loading();
      var url = href + (layui.cache.ext || '.html');// + "?" + $.param(params);
      $.get(url, function(tpl,status) {
        var lay = rb.getTplByTagName(tpl,"lay");
        var js  = rb.getTplByTagName(tpl,"js");
        tpl     = rb.getTplByTagName(tpl,"tpl");
        lay = lay ? rb.replaceByTagName(lay,'lay') : '';
        js  = js  ? rb.replaceByTagName(js,'js')   : '';
        tpl = tpl ? rb.replaceByTagName(tpl,'tpl') : '';
        if($.trim(js)) { //有js代码
          try {
            // js = js.replaceAll('&amp;',"&");
            // console.log("js",js);
            var exports = eval(js);
            exports = $.extend(true, exports, {data:params});
          } catch(e) {
            rb.log("模板js解析出错",e);
          }
          // console.log("exports: ", exports);
          if(exports.data) {
            // 请求的参数
            // exports.params = params;
            if('string' == typeof exports.use) {
              exports.use = [ exports.use ];
            }
            layui.use(exports.use,function() {
              var modules = [];
              $.each(exports.use,function(i,el) {
                modules.push(layui[el]);
              });
              // console.log("modules",modules);
              try{
                exports.init.apply(exports,modules);
              } catch(e) {
                rb.log("模板js运行出错",e);
              }
              try{
                laytpl(tpl).render(exports.data, function(html) {
                  ops.type    = 1;
                  ops.content = html + lay;
                  console.log(ops);
                  var i = layer.open(ops);
                  exports.after.apply(exports,modules);
                });
              } catch (e) {
                rb.log("模板渲染出错",e);
              }
            });
          }
        }else{ //没有js代码 直接显示到layer
          ops.type = 1;
          ops.content = tpl;
          var i = layer.open(ops);
        }
        // rb.loading(loadingIdx);
        // loading = false;
      });

      // params.sid = rb.local("uinfo").sid;
      // 注意 layer自带jquery 无getJson
      // $.getJSON(url, params, function(json, textStatus) {
      //   if(textStatus == 'success'){
      //     if(json.data.code){
      //       rb.alert(json.data.msg);
      //     }else{
      //       layui.each(json.data.jsf_tpl,function(index, el) {
      //           tpl += el;
      //       });
      //       var i = layer.open({ type:1,content: tpl,shadeClose: true,shade:0.5,title:title,maxmin:true,moveOut:true,area:[width,height] });
      //     }
      //   }
      // });
    }
    return false;
  });
  // $('body').on('click','.js-close-iframe',function() {
  //   rb.closeIframe();
  // });
  $('body').on('click','.js-close-layer',function() {
    rb.closeLayer($(this));
  });

  // var layerIndex;
  // var layerInitWidth;
  // var layerInitHeight;
  // $(window).resize(function() {
  //   rb.resizeLayer(layerIndex,layerInitWidth,layerInitHeight);
  // });　
  //依赖jquery
  //1 : .xx a[target-form=.xx].ajax-post[href=.../url=...]
  //2 : .xx[action=...] a[target-form=.xx].ajax-post[type=submit]
  //3 : .hide-data
  //return [code,date,msg,url]
  $('body').on('click','.ajax-post',function() {
    rb.log("ajax-post",'');
    var that = this,$this = $(this);
    var form = rb.parseForm($this);
    console.log("form",form);
    if(!form){ return; }
    // id ? sid ?
    var query = form.query,target = layui.cache.apiPath + form.target;
    if ($this.hasClass('confirm')) {
      rb.confirm($this.data('content') || '',function(index) {
        layer.close(index);
        rb.post(that, target, query);
      });
    } else {
      rb.post(that, target, query);
    }
    return false;
  });
  ///////////////////// app.js end //////////////////

});